Arithmetic and logic operations with DNA

نویسندگان

  • Vineet Gupta
  • Srinivasan Parthasarathy
  • Mohammed J. Zaki
چکیده

The use of DNA molecules to solve hard computational problems has been demonstrated in recent studies. However, the question of suitability of DNA for solving simple computer operations, such as boolean or arithmetic operations, has largely been unaddressed. Incorporation of these operations in DNA computing is essential for solving a wide range of applications. We present a xed bit encoding scheme, modeling the input/output mechanisms of an electronic computer, and show how a sequence of such operations can be executed in a single test tube producing a unique result. 2 In recent work, Adleman [1] and Lipton [2] presented the idea of solving di cult combinatorial search problems using DNA molecules. These studies showed that DNA computing may have an advantage over electronic computers for such problem domains due to the massive parallelism inherent in DNA reactions. However, for DNA computing to be applicable on a wider range of problems, support for simple computational operations is necessary [3]. Boolean operators such as AND, OR and NOT, and arithmetic operators such as addition and subtraction are the fundamental operations of an electronic computer. In contrast to search problems, which can be solved by generating all possible combinations and extracting the correct output, these operations mandate that only a unique output be generated by speci c inputs. Although DNA computers might not improve on current silicon technology for these operations, as Adleman [4] has pointed out, \they can contribute to our understanding of the nature of computation." Recently, Guarnieri et al. [5] have proposed a clever way to add two binary numbers. The novelty of their approach is the introduction of a place holder for the carry position while performing additions [6]. As they themselves point out, a limitation of their approach is that the output strand of one operation cannot serve as the input strand for another round of addition. This has been a constraining factor so far in performing a sequence of operations in a single vessel. In this paper we show that this limitation can be overcome (in DNA), allowing a number of basic series and series-parallel bit operation sequences in solution. In an electronic computer an operator is succinctly represented by a truth table, a table of all possible combinations of the input bit values and their corresponding output values (Table 1A). Our approach is to encode these truth tables in DNA using a three-level scheme. An operation is represented in terms of DNA hybridization. For each binary operation, the two bit strings are represented with two di erent DNA single strands. The rst string is called the \input" and the second the \operand" strand. Each bit is represented with a dinucleotide unit, and a bit string with a sequence of dinucleotides. The natural DNA bases Adenine (A), Thymine (T), Uracil (U) and a non-natural base 2,6-diaminopurine (P) (Fig. 1) are used for constructing the dinucleotides. The input DNA strand is constructed with dinucleotides 5'-AU [7] representing bit 1, and 5'-UA, the bit 0. The operand strand is constructed with dinucleotides 3'-TA and 3'-PT, representing bit 0, and the dinucleotides 3'-AT and 3'-TP, representing bit 1 [8]. The input strand is constructed using only A and U (level 1), while the operand strand with A, T, and P (level 2). This 3 keeps the input distinct from the operand, yet retains the same base-pairing structure and allows all possible combinations of the input and operand bits (Table 1). As a result of an operation the input strand hybridizes with its complementary operand strand to form a double stranded DNA complex. This output is interpreted according to the truth table (level 3) of the operator applied. Table 1B shows our encoding scheme along with the truth tables for di erent boolean and arithmetic operations such as NAND, AND, XOR and ADD (addition). The truth table encoding can easily be extended to a number of other operators. The NAND operator is a universal boolean operator, which means that any boolean operation can be represented in terms of a sequence of NAND operators. Our rst example shows the execution, in DNA, of the operator NAND on the two binary strings 1001 and 0101 (Table 2). The input bit string 1001, is represented as the DNA sequence 5'-AUUAUAAU. All 16 possible DNA sequences are used to represent the operand 0101, since there are two alternative dinucleotides for each bit in the level 2 encoding. However, as shown in Table 2, only one of the operand strands carries a DNA sequence complementary to the sequence of the input strand. This strand (3'-TAATPTTP) is thus the only one that can hybridize with the input strand to yield a unique output duplex. The output, when decoded using the truth table for NAND, yields the correct answer of 1110. In fact, the same output can be interpreted di erently if decoded using a di erent operator's truth table. For instance, if we were to perform the operation 1001 XOR 0101 instead of 1001 NAND 0101, the input and all of the operand strands would still be the same, and would yield the same output duplex. However, interpreting this output duplex according to the truth table for XOR (Table 1B) would generate a di erent but correct answer of 1100. This shows that single bit operations can be done e ciently with DNA using the proposed approach. In order to extend this framework to handle a series operation, i.e. a linear sequence of operations, we had to address two main issues: 1) how can the output of one operation, a double strand, be used as the input for the next operation, and 2) how to ensure that the operations take place only in the desired order. As shown in the rst example (Table 2), each input strand can bind with only one of the operand strands producing a duplex representing the unique output. As a solution to the rst problem we attach, a priori, the corresponding output value to each of the operand strands in the form of a single stranded DNA. The DNA sequence of the output is constructed using the level 1 encoding (Table 1B). Thus, each operand strand 4 carries a covalently linked output strand which does not interfere with its operation of hybridizing with the input strand, but instead results in a duplex with a sticky-end upon one such complexation. This sticky-end can then act as the input strand for the next operation. Not only does this allow a series operation involving a single operator, but also mixed operators, since the output strand attached to the operand is dependent only on a particular operator. To solve the second problem, we use a unique DNA sequence tag on each strand. This tag is just a length 4 DNA segment comprised of four bases, the natural bases Guanine(G) and Cytidine (C) along with the non-natural bases iso-Guanine (M) and iso-Cytidine (N) [9] (Fig. 1). Each input strand is linked with a unique tag, while the operand strand next in order in the sequence, is linked with the complementary tag. The input can thus only hybridize with the next operand. A unique tag for the next step is also linked to the output strand, since it serves as the input for the next operation. Since each of the strands is made up of an operand and an output, they may become self-complementary. The tags also prevent the formation of such unproductive duplexes. Using this approach, we generate unique DNA sequences as inputs and obtain a unique nal output resulting from the desired sequence of operations. In Figure 2, we present an example of how three di erent operators { NAND, XOR and ADD { can be performed in succession on DNA. The example solves the series operation sequence (((1001 NAND 0101) XOR 0001) ADD 0001). The rst two bit strings are the same as those used in our rst example (Table 2). The input strand (5'-AUUAUAAU-GCMN) has the bit string 5'-AUUAUAAU (1001) linked with the tag 5'-GCMN. Figure 2A shows the 16 possible representations of the operand strand (0101) that could possibly bind with the input (similar to our rst example). Only one strand hybridizes with the input, namely the strand 3'-TAATPTTP-CGNM-AUAUAUUA-CCGG, where 3'-TAATPTTP is the bit string 0101, 3'-CGNM is the complement of the tag 5'-GCMN, 3'-AUAUAUUA is the attached output (1110) of the operation and 3'-CCGG is the tag for the next operation. The result of the rst operation is thus a duplex with a single stranded overhang (3'-AUAUAUUA-CCGG), which is ideally suited to serve as the input strand for the next operation { XOR 0001. Our second operand strand, representing 0001, also has 16 possible representations (not shown). Only 5'-TATATAATGGCC-AUAUAUAUCGCG (Fig. 2B) hybridizes with the output of the previous opera5 tion, producing a duplex with the overhang 5'-AUAUAUAUCGCG as the output (1111) of the current operation. Out of the 16 possible third operand strand (0001) DNA sequences, for ADD 0001, only 3'TATATATPGCGCAUUAUAUAUA(NNNN)3 hybridizes with the output of the previous round of operations. 5'-(NNNN)3 is a special tag signifying that the sequence of operations has completed and is used for extracting the result. The unique result of our operation 3'-AUUAUAUAUA, when decoded using the truth table, is 10000, which is the correct result of our operation sequence. This examples shows that our scheme generates a unique output from a series operation in solution. In order to emulate the more complex boolean circuits as in an electronic computer, support for seriesparallel operation sequences is desirable. A series-parallel operation sequence merges two or more series operation sequences. In Figure 3 we show how the above architecture can be extended to handle a seriesparallel operation sequence in a single test tube. The output of the series operation (from the previous example, Fig. 2B), a duplex with an overhang is used as both the input and the operand complex, performing the operation [(((1001 NAND 0101) XOR 0001) ADD 0001) NAND (((1001 NAND 0101) XOR 0001)]. However, instead of the typical operand strand which has an output attached to it, the operand complex for the series-parallel operation has two attached outputs { the output of the series-parallel operation followed by the output of the series operation sequence (Fig. 3A). The nal step is a copy-operation { AND 11111 (which simply replicates the output). The result of this operation sequence is a three-arm junction [10] with the correct output (01111) as the overhang, ideally suited for performing more operations. Although only a theoretical model is presented in this paper, it is based on well-established techniques of biological chemistry. To practically carry out the operations in a test tube, we can attach the input strand 5'-AUUAUAAUGCMN to a magnetic bead, and add all the operand strands for the di erent operations to be performed, to the solution. The solution can then be heat-denatured, annealed and ligated [11]. All strands with the magnetic bead attached can be ltered o , and the output strand end-sequenced to produce the result. For an n bit long string (2n length DNA strand), with tag length m, our technique must satisfy some constraints. The length of an input/operand strand is m + 2n. Since the mismatch tolerance of a duplex increases with its length, at present duplexes only about 20 base-pairs long can distinguish single-base 6 mismatches [12], introducing the constraint m+ 2n 20 on our system. Furthermore, for m operations, we need at least m 2n distinct DNA strands in the solution. For nanomolar quantities of each, thermodynamical limitations would put the upper bound at approximately 1014 di erent strands. The rst constraint, though, clearly subsumes the second. The total length of the output complex, 2n m, might also be limited by various factors that a ect the reliablility, such as the hybridization conditions, nearest-neighbor interactions (sequence context), and the e ciency of both the successive ligations and the result extraction process. To improve the reliability, the end-tag can be used for PCR ampli cation of the output. The PCR ampli ed output can be sequenced to also verify the operations performed. Finally, the number of series-parallel operations may be limited due to the steric constraints (branching-out) that three-arm junctions introduce. There are 42n di erent sequences possible for a 2n length DNA strand, if random encodings are used. An advantage of using our xed encoding scheme is that we need to synthesize only 2n DNA sequences per operation [13], which is a very small subset of 42n. The increase in demand of DNA strands is also linear in the number of operations rather than exponential (m 2n instead of 2m 2n). Furthermore, since all possible representations of the operands, for each of the operations, are added to the solution in the beginning, all possible outputs are produced in the solution. We can simply add a given input to the solution, which will bind to its complementary sequence, and then extract the unique output. The same solution can then be reused with di erent inputs, for sequential extraction of the corresponding outputs. Thus the vessel serves as a black-box (representing some function to be performed), which takes in di erent input values to produce the corresponding outputs, without having to perform the operation again. Moreover, the fact that all the intermediate results are present in the nal output, prevents the loss of any information about the computation, and can be used for implementing reversible logic gates [14]. There are some other advantages to our approach. The use of dinucleotides as single bit units lets us represent information at a much higher bit density than any previous methodology, and brings it very close to the theoretical limit of a bit per base [15]. Our methodology also makes possible a succinct representation of basic computational operators. The use of di erent bases for encoding the bits and the operation order permits series as well as series-parallel operation sequences in one test tube, producing a unique result, and simpli es the extraction process. The unique tags help keep the operation sequence in order. They 7 also avoid the fan-out problem where a randomized sequence of molecules can produce an exponentially increasing number of product strands with the progression of the operation sequence. We use 2n molecules for each step, which interact with 2n molecules from the previous step to generate exactly 2n molecules for the next step. Generation of DNA molecules carrying sticky-ends as the output of each operation, in the reaction vessel, is another nice feature of our scheme. This output is well suited to serve as the input for the next operation which enables us to accomplish the generic input/output semantics of an electronic computer. This is an important rst step in solving problems using DNA computing where the DNA molecules have to go through multiple rounds of computation. Moreover, in most of the prior approaches where DNA was used for computing, the encoding was application speci c and based on the particular application in mind. One of the most important advantages of our proposed mechanism is that it makes both encoding and computation more general (uniform) and application independent. As our examples show, almost any basic computational operation can be carried out on our \DNA computer". In conclusion, we present a new approach for computing with DNA. The ability to perform complex bit operations in solution might help us learn more about the nature of computation and lead to the development of better DNA based computers, capable of solving a wide range of complex problems. 8 References [1] L. M. Adleman, Science 266, 1021 (1994). [2] R. J. Lipton, Science 268, 542 (1995). [3] D. K. Gi ord, Science 266, 993 (1994); R. Pool, Science 268, 498 (1995); H. Rubin, Nature Str. Biol. 3, 656 (1996). [4] L. M. Adleman, Science 268, 483 (1995). [5] F. Guarnieri, M. Fliss and C. Bancroft, Science 273, 220 (1996). [6] In contrast to boolean operators, ADD can generate two output bits (e.g. 1+1 = 10). In this case that bit position is assigned a value of zero (0) and the one (1) is carried over. The carried over bit is added to the next bit position and the value of that position adjusted accordingly. The operation is repeated as many times as there is a carry over. [7] 5' and 3' denote directionality of the DNA strand. [8] If the input strand is constructed in the 5' to 3' direction the operand strand is constructed in the 3' to 5' direction and vice versa. [9] This allows for a maximum of 256 unique tags, which gives us the option of performing 256 consecutive operations. This number can be increased by simply using a longer tag sequence. [10] N. C. Seeman, J. Theor. Biol. 99, 237 (1982). [11] Ligation can be performed either enzymatically, using DNA ligase enzyme, or chemically using Letsinger's method [M. K. Herrlein et al, J. Am. Chem. Soc. 117, 10151, (1995)]. The DNA strands will have to be properly end-modi ed for either of the cases. The modi cations should not a ect their hybridizing properties. [12] R. B. Wallace et al., Nucleic Acids Res. 6, 3543 (1979). 9 [13] All the strands can be synthesized in a single combinatorial synthesis cycle using techniques of photolithography and nucleic acid chemistry [S. P. A. Fodor et al., Science 251, 767 (1991); A. C. Pease et al., Proc. Natl. Acad. Sci. U. S. A. 91, 5022 (1994)]. [14] C. H. Bennet and R. Landauer, Scienti c American 253, 48 (1985). [15] Although, in principle mono-nucleotides can be used as single bits, there may be some complications to using such strands for performing di erent operations. For example, a long sequence of a mono-nucleotide can form unwanted triplexes. [16] We thank R. Jakubiak, Prof. E. T. Kool, H. S. Malik, Prof. B. L. Miller, Prof. M. Ogihara and Prof. A. Ray for their insightful comments and helpful discussions. 10 Table 1 B. The truth table encoding using dinucleotide "bits" AND (Interpretation of the Duplex for the Output) Level 3 Level 2 Level 1 Operand Strand Input Strand NAND XOR ADD PT = 0 AT = 1 TP = 1 TA = 0 UA = 0 AU = 1 Table 1 A. The truth table for various binary operations Input 1 Input 2 NAND XOR ADD Output AND 0 0 0 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 10 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 10

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Logical Design with Molecular Components

We propose a theoretical model to realize DNA made circuits based on in-vitro algorithms, to perform arithmetic and logical operations. The physical components of the resulting Arithmetic-Logic Unit are a variety of elements such as biochemical laboratories, test tubes and human operators. The advantage of the model is the possibility to perform arithmetic operations with huge binary numbers.

متن کامل

Addressable Procedures for Logic and Arithmetic Operations with DNA Strands

Abstract: In this paper, we consider addressable procedures with DNA strands for logic and arithmetic operations. Using a theoretical model for DNA computing, we first show a DNA representation of binary numbers of bits, and propose a procedure to assign values for the representation. The procedure is applicable to binary numbers of bits in lab steps in parallel. Next, we propose a procedure fo...

متن کامل

Procedures For Logic And Arithmetic Operations With Dna Molecules

In this paper, we consider procedures for logic and arithmetic operations with DNA molecules. We first show a DNA representation of n binary numbers of m bits, and propose a procedure to assign the same values for the representation. The representation enables addressing feature, and the procedure is applicable to n binary numbers of m bits in O(1) steps in parallel. Next, we propose a procedur...

متن کامل

Design and Simulation of a 2GHz, 64×64 bit Arithmetic Logic Unit in 130nm CMOS Technology

The purpose of this paper is to design a 64×64 bit low power, low delay and high speed Arithmetic Logic Unit (ALU). Arithmetic Logic Unit performs arithmetic operation like addition, multiplication. Adders play important role in ALU. For designing adder, the combination of carry lookahead adder and carry select adder, also add-one circuit have been used to achieve high speed and low area. In mu...

متن کامل

Prediction of Sulfate Scale Depositions in Oilfield Operations Using Arithmetic of LR Fuzzy Numbers

In this study fuzzy arithmetic is presented as a tool to tackle the prediction of the amount of barium, strontium and calcium sulfates scales in oilfield operations. Since the shape of fuzzy numbers’ membership functions is a spread representative of the whole possible values for a special model parameter, fuzzy numbers are able to consider the uncertainties in parameter determinations and thus...

متن کامل

Parallel DNA arithmetic operation based on n-moduli set

In most arithmetic systems the speed is limited by the nature of the building block which makes logic decisions and by the extent to which decisions of low order numeric significance can affect results of higher significance. In this contribution, an improved DNA representation [A. Fujiwara, K. Matsumoto, W. Chen, Procedures for logic and arithmetic operations with DNA molecules, Int. J. Found....

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997